<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>管理定区/调度排班</title>
    <!-- 导入jquery核心类库 -->
    <script type="text/javascript" src="../../js/jquery-1.8.3.js"></script>
    <!-- 导入easyui类库 -->
    <link rel="stylesheet" type="text/css" href="../../js/easyui/themes/default/easyui.css">
    <link rel="stylesheet" type="text/css" href="../../js/easyui/themes/icon.css">
    <link rel="stylesheet" type="text/css" href="../../js/easyui/ext/portal.css">
    <link rel="stylesheet" type="text/css" href="../../css/default.css">
    <script type="text/javascript" src="../../js/easyui/jquery.easyui.min.js"></script>
    <script type="text/javascript" src="../../js/easyui/ext/jquery.portal.js"></script>
    <script type="text/javascript" src="../../js/easyui/ext/jquery.cookie.js"></script>
    <script src="../../js/easyui/locale/easyui-lang-zh_CN.js" type="text/javascript"></script>
    <script type="text/javascript">

        $.fn.serializeJson = function () {
            var serializeObj = {};
            var array = this.serializeArray();
            var str = this.serialize();
            $(array).each(function () {
                if (serializeObj[this.name]) {
                    if ($.isArray(serializeObj[this.name])) {
                        serializeObj[this.name].push(this.value);
                    } else {
                        serializeObj[this.name] = [serializeObj[this.name], this.value];
                    }
                } else {
                    serializeObj[this.name] = this.value;
                }
            });
            return serializeObj;
        };


        function doAdd() {
            $('#addWindow').window("open");
        }

        function doEdit() {
            alert("修改...");
        }

        function doDelete() {
            alert("删除...");
        }

        function doSearch() {
            $('#searchWindow').window("open");

        }

        function doAssociations() {
            var datagrid = $('#grid').datagrid('getSelections');
            if (datagrid.length <= 0 || datagrid.length >= 2) {
                return $.messager.alert("警告", "请选中,或选中一行!", "warning")
            } else {
                document.getElementById("showCustomer").style.visibility = "hidden"
                //进行异步获取  noassociationSelect  没有进行关联的客户
                $('#noassociationSelect').empty();
                $.get('../../noassociationCustomer.action', function (data) {
                    $.each(data, function () {
                        var option = '<option value=' + this.id + '>' + this.username + '(' + this.address + ')</option>'
                        //内部插入 option 标签数据
                        $('#noassociationSelect').append(option)
                    })
                })


                //associationSelect  已经选中指定的关联客户   指定分区的ID
                $.post('../../associationCustomer.action', {'id': datagrid[0].id}, function (data) {
                    $('#associationSelect').empty();

                    if (data.length == 0) {
                        document.getElementById("showCustomer").style.visibility = "visible"
                        return
                    }

                    $.each(data, function () {
                        var option = '<option value=' + this.id + '>' + this.username + '(' + this.address + ')</option>'
                        //内部插入 option 标签数据
                        $('#associationSelect').append(option)
                    })
                })


                $('#customerWindow').window('open');
            }
        }



        //工具栏
        var toolbar = [{
            id: 'button-search',
            text: '查询',
            iconCls: 'icon-search',
            handler: doSearch
        }, {
            id: 'button-add',
            text: '增加',
            iconCls: 'icon-add',
            handler: doAdd
        }, {
            id: 'button-edit',
            text: '修改',
            iconCls: 'icon-edit',
            handler: doEdit
        }, {
            id: 'button-delete',
            text: '删除',
            iconCls: 'icon-cancel',
            handler: doDelete
        }, {
            id: 'button-association',
            text: '关联客户',
            iconCls: 'icon-sum',
            handler: doAssociations
        }, {
            id: 'button-association-courier',
            text: '关联快递员',
            iconCls: 'icon-sum',
            handler: function () {
                // 判断是否已经选中了一个定区，弹出关联快递员窗口
                var rows = $("#grid").datagrid('getSelections');
                if (rows.length == 1) {
                    // 只选择了一个定区
                    // 弹出定区关联快递员 窗口
                    $("#courierWindow").window('open');
                } else {
                    // 没有选中定区，或者选择 了多个定区
                    $.messager.alert("警告", "关联快递员,只能（必须）选择一个定区", "warning");
                }
            }
        }];
        // 定义列
        var columns = [[{
            field: 'fixedAreaNum',
            title: '编号',
            width: 80,
            align: 'center',
            checkbox: true
        }, {
            field: 'id',
            title: '定区编号',
            width: 120,
            align: 'center'
        }, {
            field: 'fixedAreaName',
            title: '定区名称',
            width: 120,
            align: 'center'
        }, {
            field: 'fixedAreaLeader',
            title: '负责人',
            width: 120,
            align: 'center'
        }, {
            field: 'telephone',
            title: '联系电话',
            width: 120,
            align: 'center'
        }, {
            field: 'company',
            title: '所属公司',
            width: 120,
            align: 'center'
        }]];

        $(function () {
            // 先将body隐藏，再显示，不会出现页面刷新效果
            $("body").css({visibility: "visible"});

            // 定区数据表格
            $('#grid').datagrid({
                iconCls: 'icon-forward',
                fit: true,
                border: true,
                rownumbers: true,
                striped: true,
                pageList: [30, 50, 100],
                pagination: true,
                toolbar: toolbar,
                url: "../../fixedArea_pageQuery.action",
                idField: 'id',
                columns: columns,
                onDblClickRow: doDblClickRow
            });

            // 添加、修改定区
            $('#addWindow').window({
                title: '添加修改定区',
                width: 600,
                modal: true,
                shadow: true,
                closed: true,
                height: 400,
                resizable: false
            });

            // 查询定区
            $('#searchWindow').window({
                title: '查询定区',
                width: 400,
                modal: true,
                shadow: true,
                closed: true,
                height: 400,
                resizable: false
            });
            $("#btn").click(function () {
                var serializeJson = $('#searchForm').serializeJson()
                $('#grid').datagrid('load', serializeJson)

                $('#searchWindow').window('close')

            });
            $('#save').click(function () {
                var form = $('#addFixedAreaForm').form('validate');
                if (form) {
                    $('#addFixedAreaForm').submit();
                } else {
                    $.messager.alert('警告！', '请完善信息!', 'warning')
                }
            })
             //将未关联客户  添加到已关联客户上
            $('#toRight').click(function () {
                //fixedArea Id      这是一个分区ID
                //#noassociationSelect
                     $('#noassociationSelect').append($('#associationSelect option:selected'))




            })
            //将关联客户编程未关联
            $('#toLeft').click(function () {
                //#associationSelect


                //#noassociationSelect
                    $('#associationSelect').append($('#noassociationSelect option:selected'))





            })
            $('#associationBtn').click(function () {
                var rows = $("#grid").datagrid('getSelections')
                $('#associationSelect option').attr('selected','selected')
                $('#customerFixedAreaId').val( rows[0].id )

                $('#customerForm').submit();


            })

            $('#associationCourierBtn').click(function () {
                if ($('#courierForm').form("validate")) {
                    var rows = $("#grid").datagrid('getSelections')
                    $("#courierFixedAreaId").val(rows[0].id)
                    $('#courierForm').submit()

                }else{
                    $.messager.alert('警告','请完善表单内容!','warning')
                    return
                }
            })

        });

        function doDblClickRow() {
            $('#association_subarea').datagrid({
                fit: true,
                border: true,
                rownumbers: true,
                striped: true,
                url: "../../data/association_subarea.json",
                columns: [[{
                    field: 'id',
                    title: '分拣编号',
                    width: 120,
                    align: 'center'
                }, {
                    field: 'province',
                    title: '省',
                    width: 120,
                    align: 'center',
                    formatter: function (data, row, index) {
                        if (row.area != null) {
                            return row.area.province;
                        }
                        return "";
                    }
                }, {
                    field: 'city',
                    title: '市',
                    width: 120,
                    align: 'center',
                    formatter: function (data, row, index) {
                        if (row.area != null) {
                            return row.area.city;
                        }
                        return "";
                    }
                }, {
                    field: 'district',
                    title: '区',
                    width: 120,
                    align: 'center',
                    formatter: function (data, row, index) {
                        if (row.area != null) {
                            return row.area.district;
                        }
                        return "";
                    }
                }, {
                    field: 'addresskey',
                    title: '关键字',
                    width: 120,
                    align: 'center'
                }, {
                    field: 'startnum',
                    title: '起始号',
                    width: 100,
                    align: 'center'
                }, {
                    field: 'endnum',
                    title: '终止号',
                    width: 100,
                    align: 'center'
                }, {
                    field: 'single',
                    title: '单双号',
                    width: 100,
                    align: 'center'
                }, {
                    field: 'position',
                    title: '位置',
                    width: 200,
                    align: 'center'
                }]]
            });
            $('#association_customer').datagrid({
                fit: true,
                border: true,
                rownumbers: true,
                striped: true,
                url: "../../data/association_customer.json",
                columns: [[{
                    field: 'id',
                    title: '客户编号',
                    width: 120,
                    align: 'center'
                }, {
                    field: 'name',
                    title: '客户名称',
                    width: 120,
                    align: 'center'
                }, {
                    field: 'company',
                    title: '所属单位',
                    width: 120,
                    align: 'center'
                }]]
            });

        }
    </script>
</head>

<body class="easyui-layout" style="visibility:hidden;">
<div region="center" border="false">
    <table id="grid"></table>
</div>
<div region="south" border="false" style="height:150px">
    <div id="tabs" fit="true" class="easyui-tabs">
        <div title="关联分区" id="subArea" style="width:100%;height:100%;overflow:hidden">
            <table id="association_subarea"></table>
        </div>
        <div title="关联客户" id="customers" style="width:100%;height:100%;overflow:hidden">
            <table id="association_customer"></table>
        </div>
    </div>
</div>

<!-- 添加 修改分区 -->
<div class="easyui-window" title="定区添加修改" id="addWindow" collapsible="false" minimizable="false" maximizable="false"
     style="top:20px;left:200px">
    <div style="height:31px;overflow:hidden;" split="false" border="false">
        <div class="datagrid-toolbar">
            <a id="save" icon="icon-save" class="easyui-linkbutton" plain="true">保存</a>
        </div>
    </div>

    <div style="overflow:auto;padding:5px;" border="false">
        <form id="addFixedAreaForm" action="../../fixedArea_save.action" method="post">
            <table class="table-edit" width="80%" align="center">
                <tr class="title">
                    <td colspan="2">定区信息</td>
                </tr>
                <tr>
                    <td>定区编码</td>
                    <td>
                        <input type="text" name="id" class="easyui-validatebox" required="true"/>
                    </td>
                </tr>
                <tr>
                    <td>定区名称</td>
                    <td>
                        <input type="text" name="fixedAreaName" class="easyui-validatebox" required="true"/>
                    </td>
                </tr>
                <tr>
                    <td>负责人</td>
                    <td>
                        <input class="easyui-validatebox" name="fixedAreaLeader" required="true"/>
                    </td>
                </tr>
                <tr>
                    <td>联系电话</td>
                    <td>
                        <input class="easyui-validatebox" name="telephone" required="true"/>
                    </td>
                </tr>
                <tr>
                    <td>所属单位</td>
                    <td>
                        <input class="easyui-validatebox" name="company" required="true"/>
                    </td>
                </tr>
            </table>
        </form>
    </div>
</div>
<!-- 查询定区 -->
<div class="easyui-window" title="查询定区窗口" id="searchWindow" collapsible="false" minimizable="false" maximizable="false"
     style="top:20px;left:200px">
    <div style="overflow:auto;padding:5px;" border="false">
        <form id="searchForm">
            <table class="table-edit" width="80%" align="center">
                <tr class="title">
                    <td colspan="2">查询条件</td>
                </tr>
                <tr>
                    <td>定区编码</td>
                    <td>
                        <input type="text" name="id" class="easyui-validatebox" required="true"/>
                    </td>
                </tr>
                <tr>
                    <td>所属单位</td>
                    <td>
                        <input type="text" name="company" class="easyui-validatebox" required="true"/>
                    </td>
                </tr>
                <tr>
                    <td>分区</td>
                    <td>
                        <input type="text" name="fixedAreaName" class="easyui-validatebox" required="true"/>
                    </td>
                </tr>
                <tr>
                    <td colspan="2"><a id="btn" class="easyui-linkbutton" data-options="iconCls:'icon-search'">查询</a>
                    </td>
                </tr>
            </table>
        </form>
    </div>
</div>

<!-- 关联客户窗口 -->
<div class="easyui-window" title="关联客户窗口" model="true" id="customerWindow" collapsible="false" closed="true"
     minimizable="false" maximizable="false" style="top:20px;left:200px;width: 400px;height: 300px;">
    <div style="overflow:auto;padding:5px;" border="false">
        <form id="customerForm" action="../../moveCustomerAndFixedArea.action" method="post">
            <table class="table-edit" width="80%" align="center">

                <tr>
                    <td>
                        <span style="size: 7px;color:#b4c0d2">未关联客户</span><br/>
                        <input type="hidden" name="id" id="customerFixedAreaId"/>
                        <select id="noassociationSelect" multiple="multiple" size="10"></select>
                    </td>
                    <td>
                        <input type="button" value="《《" id="toRight">
                        <br/>
                        <input type="button" value="》》" id="toLeft">
                    </td>

                    <td>
                        <span style="size: 7px;color:#b4c0d2">已关联客户</span><br/>

                        <select id="associationSelect" name="customerIds" multiple="multiple" size="10"></select>
                    <td id="showCustomer">
                        <span style="size: 7px;color:brown">当前未添加任何客户信息</span>

                    </td>


                    </td>
                </tr>
                <tr>
                    <td colspan="3"><a id="associationBtn"  class="easyui-linkbutton"
                                       data-options="iconCls:'icon-save'">关联客户</a></td>
                </tr>
            </table>
        </form>
    </div>
</div>

<!-- 关联快递员窗口 -->
<div class="easyui-window" title="关联快递员窗口" id="courierWindow" modal="true"
     collapsible="false" closed="true" minimizable="false" maximizable="false"
     style="top:20px;left:200px;width: 700px;height: 300px;">
    <div style="overflow:auto;padding:5px;" border="false">
        <form id="courierForm"
              action="../../fixedArea_associationCourierToFixedArea.action" method="post">
            <table class="table-edit" width="80%" align="center">
                <tr class="title">
                    <td colspan="2">关联快递员</td>
                </tr>
                <tr>
                    <td>选择快递员</td>
                    <td>
                        <!-- 存放定区编号 -->
                        <input type="hidden" name="id" id="courierFixedAreaId"/>
                        <input type="text" name="courierId" class="easyui-combobox" data-options="url:'../../noassociationCourier.action',valueField:'id',textField:'info'" required="true"/>
                    </td>
                </tr>
                <tr>
                    <td>选择收派时间</td>
                    <td>
                        <input type="text" name="takeTimeId" class="easyui-combobox"  data-options="url:'../../takeTime_findAll.action',valueField:'id',textField:'name'"   required="true"/>
                    </td>
                </tr>
                <tr>
                    <td colspan="3"><a id="associationCourierBtn"  class="easyui-linkbutton"
                                       data-options="iconCls:'icon-save'">关联快递员</a></td>
                </tr>
            </table>
        </form>
    </div>
</div>
</body>

</html>